package com.ourteam.product.requirement.dao;

/**
 * Template Name : DAO数据对象
 * Template Version : 1
 * Template Last Modfiy Date : Fri Aug 18 15:51:23 CST 2017
 * Auto Generate Date : 2018-05-03 16:45:20
  * Warning ! This file will be overwrite when regenerate !
  *
 */
import org.apache.commons.lang.StringUtils;


public class ProductIssueAttach implements java.io.Serializable {
    private long id;

    /**
     * Attribute id Be Seted Falg
     */
    private boolean idSetted = false;

    /**
    * Attribute id is Null Falg
    */
    private boolean idNull = false;
    private long issueId;

    /**
     * Attribute issueId Be Seted Falg
     */
    private boolean issueIdSetted = false;

    /**
    * Attribute issueId is Null Falg
    */
    private boolean issueIdNull = false;
    private String attachFileName;

    /**
     * Attribute attachFileName Be Seted Falg
     */
    private boolean attachFileNameSetted = false;

    /**
    * Attribute attachFileName is Null Falg
    */
    private boolean attachFileNameNull = false;
    private String attachFilePath;

    /**
     * Attribute attachFilePath Be Seted Falg
     */
    private boolean attachFilePathSetted = false;

    /**
    * Attribute attachFilePath is Null Falg
    */
    private boolean attachFilePathNull = false;
    private java.util.Date uploadTime;

    /**
     * Attribute uploadTime Be Seted Falg
     */
    private boolean uploadTimeSetted = false;

    /**
    * Attribute uploadTime is Null Falg
    */
    private boolean uploadTimeNull = false;
    private long uploadUserId;

    /**
     * Attribute uploadUserId Be Seted Falg
     */
    private boolean uploadUserIdSetted = false;

    /**
    * Attribute uploadUserId is Null Falg
    */
    private boolean uploadUserIdNull = false;
    private String status;

    /**
     * Attribute status Be Seted Falg
     */
    private boolean statusSetted = false;

    /**
    * Attribute status is Null Falg
    */
    private boolean statusNull = false;
    private String remarks;

    /**
     * Attribute remarks Be Seted Falg
     */
    private boolean remarksSetted = false;

    /**
    * Attribute remarks is Null Falg
    */
    private boolean remarksNull = false;
    private String uploadUserName;

    /**
     * Attribute uploadUserName Be Seted Falg
     */
    private boolean uploadUserNameSetted = false;

    /**
    * Attribute uploadUserName is Null Falg
    */
    private boolean uploadUserNameNull = false;
    private String uploadUserPhoto;

    /**
     * Attribute uploadUserPhoto Be Seted Falg
     */
    private boolean uploadUserPhotoSetted = false;

    /**
    * Attribute uploadUserPhoto is Null Falg
    */
    private boolean uploadUserPhotoNull = false;

    public ProductIssueAttach() {
        super();
    }

    /**
         * Get id
         *
         * @return long
         */
    final public long getId() {
        return id;
    }

    /**
     * Set id
     *
     * @param long
     */
    final public void setId(long id) {
        this.id = id;

        this.idSetted = true;

        this.setIdNull(false);
    }

    /**
     * Get id Has Been Setted
     *
     * @return boolean
     */
    final public boolean isIdSetted() {
        return this.idSetted;
    }

    /**
     * Set id Null
     *
     */
    final public void setIdNull() {
        this.idNull = true;
    }

    final public void setIdNull(boolean aNullFlag) {
        this.idNull = aNullFlag;
    }

    final public boolean isIdNull() {
        return this.idNull;
    }

    /**
         * Get issueId
         *
         * @return long
         */
    final public long getIssueId() {
        return issueId;
    }

    /**
     * Set issueId
     *
     * @param long
     */
    final public void setIssueId(long issueId) {
        this.issueId = issueId;

        this.issueIdSetted = true;

        this.setIssueIdNull(false);
    }

    /**
     * Get issueId Has Been Setted
     *
     * @return boolean
     */
    final public boolean isIssueIdSetted() {
        return this.issueIdSetted;
    }

    /**
     * Set issueId Null
     *
     */
    final public void setIssueIdNull() {
        this.issueIdNull = true;
    }

    final public void setIssueIdNull(boolean aNullFlag) {
        this.issueIdNull = aNullFlag;
    }

    final public boolean isIssueIdNull() {
        return this.issueIdNull;
    }

    /**
         * Get attachFileName
         *
         * @return String
         */
    final public String getAttachFileName() {
        if (isAttachFileNameNull()) {
            return null;
        } else {
            return StringUtils.trim(attachFileName);
        }
    }

    /**
     * Set attachFileName
     *
     * @param String
     */
    final public void setAttachFileName(String attachFileName) {
        this.attachFileName = StringUtils.trim(attachFileName);

        this.attachFileNameSetted = true;

        this.setAttachFileNameNull(this.attachFileName == null);
    }

    /**
     * Get attachFileName Has Been Setted
     *
     * @return boolean
     */
    final public boolean isAttachFileNameSetted() {
        return this.attachFileNameSetted;
    }

    /**
     * Set attachFileName Null
     *
     */
    final public void setAttachFileNameNull() {
        this.attachFileNameNull = true;
    }

    final public void setAttachFileNameNull(boolean aNullFlag) {
        this.attachFileNameNull = aNullFlag;
    }

    final public boolean isAttachFileNameNull() {
        return this.attachFileNameNull;
    }

    /**
         * Get attachFilePath
         *
         * @return String
         */
    final public String getAttachFilePath() {
        if (isAttachFilePathNull()) {
            return null;
        } else {
            return StringUtils.trim(attachFilePath);
        }
    }

    /**
     * Set attachFilePath
     *
     * @param String
     */
    final public void setAttachFilePath(String attachFilePath) {
        this.attachFilePath = StringUtils.trim(attachFilePath);

        this.attachFilePathSetted = true;

        this.setAttachFilePathNull(this.attachFilePath == null);
    }

    /**
     * Get attachFilePath Has Been Setted
     *
     * @return boolean
     */
    final public boolean isAttachFilePathSetted() {
        return this.attachFilePathSetted;
    }

    /**
     * Set attachFilePath Null
     *
     */
    final public void setAttachFilePathNull() {
        this.attachFilePathNull = true;
    }

    final public void setAttachFilePathNull(boolean aNullFlag) {
        this.attachFilePathNull = aNullFlag;
    }

    final public boolean isAttachFilePathNull() {
        return this.attachFilePathNull;
    }

    /**
         * Get uploadTime
         *
         * @return java.util.Date
         */
    final public java.util.Date getUploadTime() {
        return uploadTime;
    }

    /**
     * Set uploadTime
     *
     * @param java.util.Date
     */
    final public void setUploadTime(java.util.Date uploadTime) {
        this.uploadTime = uploadTime;

        this.uploadTimeSetted = true;

        this.setUploadTimeNull(this.uploadTime == null);
    }

    /**
     * Get uploadTime Has Been Setted
     *
     * @return boolean
     */
    final public boolean isUploadTimeSetted() {
        return this.uploadTimeSetted;
    }

    /**
     * Set uploadTime Null
     *
     */
    final public void setUploadTimeNull() {
        this.uploadTimeNull = true;
    }

    final public void setUploadTimeNull(boolean aNullFlag) {
        this.uploadTimeNull = aNullFlag;
    }

    final public boolean isUploadTimeNull() {
        return this.uploadTimeNull;
    }

    /**
         * Get uploadUserId
         *
         * @return long
         */
    final public long getUploadUserId() {
        return uploadUserId;
    }

    /**
     * Set uploadUserId
     *
     * @param long
     */
    final public void setUploadUserId(long uploadUserId) {
        this.uploadUserId = uploadUserId;

        this.uploadUserIdSetted = true;

        this.setUploadUserIdNull(false);
    }

    /**
     * Get uploadUserId Has Been Setted
     *
     * @return boolean
     */
    final public boolean isUploadUserIdSetted() {
        return this.uploadUserIdSetted;
    }

    /**
     * Set uploadUserId Null
     *
     */
    final public void setUploadUserIdNull() {
        this.uploadUserIdNull = true;
    }

    final public void setUploadUserIdNull(boolean aNullFlag) {
        this.uploadUserIdNull = aNullFlag;
    }

    final public boolean isUploadUserIdNull() {
        return this.uploadUserIdNull;
    }

    /**
         * Get status
         *
         * @return String
         */
    final public String getStatus() {
        if (isStatusNull()) {
            return null;
        } else {
            return StringUtils.trim(status);
        }
    }

    /**
     * Set status
     *
     * @param String
     */
    final public void setStatus(String status) {
        this.status = StringUtils.trim(status);

        this.statusSetted = true;

        this.setStatusNull(this.status == null);
    }

    /**
     * Get status Has Been Setted
     *
     * @return boolean
     */
    final public boolean isStatusSetted() {
        return this.statusSetted;
    }

    /**
     * Set status Null
     *
     */
    final public void setStatusNull() {
        this.statusNull = true;
    }

    final public void setStatusNull(boolean aNullFlag) {
        this.statusNull = aNullFlag;
    }

    final public boolean isStatusNull() {
        return this.statusNull;
    }

    /**
         * Get remarks
         *
         * @return String
         */
    final public String getRemarks() {
        if (isRemarksNull()) {
            return null;
        } else {
            return StringUtils.trim(remarks);
        }
    }

    /**
     * Set remarks
     *
     * @param String
     */
    final public void setRemarks(String remarks) {
        this.remarks = StringUtils.trim(remarks);

        this.remarksSetted = true;

        this.setRemarksNull(this.remarks == null);
    }

    /**
     * Get remarks Has Been Setted
     *
     * @return boolean
     */
    final public boolean isRemarksSetted() {
        return this.remarksSetted;
    }

    /**
     * Set remarks Null
     *
     */
    final public void setRemarksNull() {
        this.remarksNull = true;
    }

    final public void setRemarksNull(boolean aNullFlag) {
        this.remarksNull = aNullFlag;
    }

    final public boolean isRemarksNull() {
        return this.remarksNull;
    }

    /**
         * Get uploadUserName
         *
         * @return String
         */
    final public String getUploadUserName() {
        if (isUploadUserNameNull()) {
            return null;
        } else {
            return StringUtils.trim(uploadUserName);
        }
    }

    /**
     * Set uploadUserName
     *
     * @param String
     */
    final public void setUploadUserName(String uploadUserName) {
        this.uploadUserName = StringUtils.trim(uploadUserName);

        this.uploadUserNameSetted = true;

        this.setUploadUserNameNull(this.uploadUserName == null);
    }

    /**
     * Get uploadUserName Has Been Setted
     *
     * @return boolean
     */
    final public boolean isUploadUserNameSetted() {
        return this.uploadUserNameSetted;
    }

    /**
     * Set uploadUserName Null
     *
     */
    final public void setUploadUserNameNull() {
        this.uploadUserNameNull = true;
    }

    final public void setUploadUserNameNull(boolean aNullFlag) {
        this.uploadUserNameNull = aNullFlag;
    }

    final public boolean isUploadUserNameNull() {
        return this.uploadUserNameNull;
    }

    /**
         * Get uploadUserPhoto
         *
         * @return String
         */
    final public String getUploadUserPhoto() {
        if (isUploadUserPhotoNull()) {
            return null;
        } else {
            return StringUtils.trim(uploadUserPhoto);
        }
    }

    /**
     * Set uploadUserPhoto
     *
     * @param String
     */
    final public void setUploadUserPhoto(String uploadUserPhoto) {
        this.uploadUserPhoto = StringUtils.trim(uploadUserPhoto);

        this.uploadUserPhotoSetted = true;

        this.setUploadUserPhotoNull(this.uploadUserPhoto == null);
    }

    /**
     * Get uploadUserPhoto Has Been Setted
     *
     * @return boolean
     */
    final public boolean isUploadUserPhotoSetted() {
        return this.uploadUserPhotoSetted;
    }

    /**
     * Set uploadUserPhoto Null
     *
     */
    final public void setUploadUserPhotoNull() {
        this.uploadUserPhotoNull = true;
    }

    final public void setUploadUserPhotoNull(boolean aNullFlag) {
        this.uploadUserPhotoNull = aNullFlag;
    }

    final public boolean isUploadUserPhotoNull() {
        return this.uploadUserPhotoNull;
    }

    public int hashCode() {
        final int prime = 31;
        int result = 1;

        result = (prime * result) + (int) (getId() ^ (getId() >>> 32));

        return result;
    }

    public boolean equals(Object obj) {
        if (obj == null) {
            return false;
        }

        if ((obj instanceof ProductIssueAttach) == false) {
            return false;
        }

        ProductIssueAttach other = (ProductIssueAttach) obj;

        if (getId() != other.getId()) {
            return false;
        }

        return true;
    }

    public String toString() {
        StringBuffer buffer = new StringBuffer();

        buffer.append("[");

        buffer.append("id=");
        buffer.append(this.id);

        buffer.append("issueId=");
        buffer.append(this.issueId);

        buffer.append("attachFileName=");
        buffer.append(this.attachFileName);

        buffer.append("attachFilePath=");
        buffer.append(this.attachFilePath);

        buffer.append("uploadTime=");
        buffer.append(this.uploadTime);

        buffer.append("uploadUserId=");
        buffer.append(this.uploadUserId);

        buffer.append("status=");
        buffer.append(this.status);

        buffer.append("remarks=");
        buffer.append(this.remarks);

        buffer.append("uploadUserName=");
        buffer.append(this.uploadUserName);

        buffer.append("uploadUserPhoto=");
        buffer.append(this.uploadUserPhoto);

        buffer.append("]");

        return buffer.toString();
    }
}
